package com.joker.demo.core.exception;

import cn.hutool.core.text.CharSequenceUtil;

/**
 * 业务异常，默认情况下推荐使用
 * @author feixiang.li
 * @since 2025/6/21 10:38
 */
public class BizException extends RuntimeException {
    /**
     * uid
     */
    private static final long serialVersionUID = 7805981291350841911L;

    /**
     * 默认构造函数
     */
    public BizException() {
        super("Business exception.");
    }

    /**
     * 构造函数
     *
     * @param errMsg 异常消息
     */
    public BizException(String errMsg) {
        super(errMsg);
    }

    /**
     * 构造函数
     *
     * @param template 文本模板，被替换的部分用 {} 表示
     * @param params   参数值
     */
    public BizException(CharSequence template, Object... params) {
        super(CharSequenceUtil.format(template, params));
    }

    /**
     * 业务异常
     *
     * @param cause 原始异常
     */
    public BizException(Throwable cause) {
        super(cause);
    }
}
